package com.video.ui.loader;
import android.content.Context;
import com.android.volley.RequestQueue;
import com.android.volley.toolbox.VolleyHelper;
import com.google.gson.reflect.TypeToken;
import com.tv.ui.metro.model.DisplayItem;
import com.tv.ui.metro.model.GenericBlock;
/**
* Created by tv metro on 9/1/14.
*/
public class TabsGsonLoader extends BaseGsonLoader<GenericBlock<DisplayItem>> {
public static int LOADER_ID = 0x401;
@Override
public void setCacheFileName() {
cacheFileName = "tabs_content.cache";
}
@Override
public void setLoaderURL(DisplayItem item) {
//only for test
//calledURL = "https://raw.githubusercontent.com/AiAndroid/mobilevideo/master/mobile_port.json";
calledURL = CommonBaseUrl.BaseURL + "c/home";
}
public TabsGsonLoader(Context context, DisplayItem item) {
super(context, item, 1);
}
@Override
protected void loadDataByGson() {
RequestQueue requestQueue = VolleyHelper.getInstance(getContext().getApplicationContext()).getAPIRequestQueue();
GsonRequest<GenericBlock<DisplayItem>> gsonRequest = new GsonRequest<GenericBlock<DisplayItem>>(calledURL, new TypeToken<GenericBlock<DisplayItem>>(){}.getType(), null, listener, errorListener);
gsonRequest.setCacheNeed(getContext().getCacheDir() + "/" + cacheFileName);
requestQueue.add(gsonRequest);
}
}